An IP Multimedia Subsystem (IMS) architecture defines an application server (AS) and a mechanism that allows multiple application servers to deliver services to a single communication session. Each application server implements a half-call model. The half-call model separates two phases of processing of a call session: the originating phase and the terminating phase. When an application service is invoked, services supplied by the application service depend upon which phase of the call is being processed. During the originating phase application services are provided based on a service profile of the session originator. During the terminating phase, application services are provided based on a service profile of the session terminator.
Session Initiation Protocol (SIP) is the communication protocol typically used for communication between the application servers and the IMS infrastructure. Although many conventional enterprise communication systems—such as Private Branch Exchanges (PBX)—support SIP, an IMS collaborative call processing procedure is not supported by these conventional systems. For example, a conventional PBX implements a full-call model that has no distinct separation of the call into originating and terminating sessions. Thus, a conventional PBX user cannot receive IMS services. This is a significant obstacle to migration of legacy PBX systems to IMS architecture.
Several attempts to address this problem have been proposed. In one attempted solution, a concept of an implicit user is introduced which is defined by a service profile for the originating phase and for the terminating phase. This facilitates the delivery of IMS services from a SIP core to a conventional PBX user. However, calls between two users hosted by the same PBX, i.e., local calls, are not provided to the SIP core for processing. As a result, IMS services cannot be applied to local calls.
Another attempt allows for exposing all calls to the IMS applications while internally maintaining full call model processing. Externally, a communication manager-evolution server (CM-ES) implements an emulation of the half call model. Unfortunately, this solution is applicable only to users that have SIP clients and have IMS line service configured. The solution fails to address the problem presented by a conventional PBX using traditional Time Division Multiplex (TDM) or proprietary clients.
Yet another approach applies digit manipulation and special routing rules to PBX calls so that every call of a PBX user is routed via the IMS SIP core and is thus accessible or “exposed” to IMS application servers. This approach has several drawbacks. First, the approach results in a complex PBX configuration that is prone to routing loops and is difficult to maintain. Second, the digit manipulation and routing via external trunks adversely impacts the information displayed at a client's phone display. Third, the approach does not provide appropriate information to IMS applications in the event of call modifications that occur as a result of executing PBX functions such as call transfer and ad-hoc conferencing. Fourth, the approach is not easily scalable since the configuration changes can rarely be implemented for a single user or a small number of users. Also note that with this approach, a local call consumes two SIP virtual trunks. The maximum number of SIP virtual trunks is limited and licensed, thus running the risk of exhausting available resources in case the configuration changes apply to all PBX users.
Therefore, there is a need for a method and system that provides a scalable and manageable way to integrate conventional enterprise communication systems into an IMS-based services environment.